查看原文
其他

【计算教程003期】在Pd(110)表面CO的吸附计算(上)

盟主 科学指南针一模拟计算联盟 2022-07-09

该教程是CASTEP官方教程中有名的劝退教程。才读到开头就会发出这样的疑问:这是啥?这又是啥?为什么不能直接告诉我怎么算个吸附能就完事了?问题很简单就是涉及到的知识点不少。



为了让大家能够更容易接受和吸收,我自己往里面加了一些东西。限于篇幅,本教程将会分成2期推送。


教程目的:介绍使用CASTEP来计算气体在金属表面上的吸附能。

所用模块:MaterialsVisualizer, CASTEP
阅读时间:★★★☆☆

阅读难度:★★★★☆

预备知识:吸附模型相关知识


在本教程中,将研究CO在Pd(110)上的吸附。Pd表面在各种催化反应中起着至关重要的作用。了解分子如何与此类表面相互作用是了解催化反应的第一步。在本例中,密度泛函理论(DFT)模拟能促进这一理解,可以解决以下问题:

※ 分子吸附在何处?

※ 多少分子会吸附在表面上?

※ 什么是吸附能?

※ 吸附结构如何?

※ 吸附的机理是什么?


我们将关注一个吸附位点,即短桥位(the short bridge site),因为它是已知的能量优先位置。

大家如果不是研究吸附的,可能会对这个概念比较懵,这里我给大家找了个简图。


在1 ML覆盖度下,CO分子彼此排斥,从而阻止了它们与表面完全垂直对齐。

MonoLayer的缩写,ML,是覆盖度的单位。其表示的含义为吸附上的原子占基底原子的比例。例如基底是由100个原子组成的薄膜,它又吸附了100个其他原子在其表面形成一层新的薄膜,此时的覆盖度就是1.0(ML)

还是懵,那我再来一张图(AppliedSurface Science 257 (2011) 6878–6883)


以上不是MS原版教程中的内容,是我自己为了方便大家理解加进去的。如果还是不懂,就找书来看看吧,一般讲Langmuir 吸附的部分多少会提到这个。

我们将通过考虑一个(1×1)和(2×1)表面原胞来计算这种倾斜对化学吸附能的能量贡献。



       Pd的bulk和Pd(110)表面的顶视图。(110)劈裂平面以蓝色突出显示。a0是体晶格常数,也称为晶格参数。

       以下开始本教程实战部分

       介绍:

       在本教程中,将使用CASTEP优化并计算几个不同系统的总能量。一旦确定了这些能量,就可以计算Pd(110)上CO的化学吸附能。

       本教程包含以下内容

       1 Getting started(知道是什么意思,但依旧不知道该翻译成啥比较好)

       2 优化Pd晶格

       3 构建并优化CO

       4 构建Pd(110)表面

       5 弛豫Pd(110)表面

       6 添加CO分子到1x1 Pd(110)表面并优化结构

       7 建立并优化2 x 1 Pd(110)表面

       8 能量分析

       9 态密度分析


1 Getting started


打开MS并创建一个新的project,打开New Project对话框,并且输入CO_on_Pd作为project名字。然后点击OK按钮。
本教程包括五个不同的计算。为了使项目容易管理,应该一开始就在项目中建立五个子文目录。
在Project Explorer中根目录图标上右击,选择New | Folder。重复该操作四次。在NewFolder上右击,选择Rename,输入Pd bulk。对其他文件夹重复这一操作,并将它们分别命名为Pd(110), CO molecule, (1x1) CO on Pd(110) and (2x1)CO on Pd(110)

2. 优化Pd晶格


Pd的晶体结构包含在Materials Studio提供的结构库中,直接导入即可。
在Project Explorer中,右击Pd bulk目录,并选择Import...,定位到Structures/metals/pure-metals,找到并导入Pd.msi。
在Pd 3D视图文件中右击,选择Display Style,在Atom选项卡上,选择Ball and stick,关闭对话框。
现在用CASTEP对Pd的几何形状进行优化。
学完上一节教程,这个应该已经会了吧【计算教程002期】CASTEP—用第一性原理方法预测AlAs的晶格参数
从菜单栏选择Modules | CASTEP | Calculation。
显示CASTEPCalculation对话框。

晶体的晶胞优化,比采用默认设置执行的优化需要更精确的计算。
将Quality从Medium改为Fine。
将Task从Energy改为Geometry Optimization。几何优化的默认值不包含对晶胞的优化。
点击More…按钮,在CASTEP GeometryOptimization对话框里,选中Optimize Cell。点击Run按钮。显示一个转换到primitive cell的消息框,点击Yes按钮。此处新版和老版有差别,我出差了本本中是老版的MS官方教程,是这样选择,新版怎么选择请看上一期教程,切记看文字描述部分Cell optimization中选择full。
提交并开始运行。此时可以转入下一节,构建CO分子。但是在计算完成时应该返回这里以显示晶格参数。这句意思是,不要以为做计算化学就是整好输入文件就可以开心玩一周。你应该在计算等待的时间为下一步做准备,或者看看文献看看书
当优化结束时,必须把原胞转换回常规晶胞表现形式,以便在第4步时构建Pd(110)表面。
在Project Explorer中,打开位于Pd CASTEP GeomOpt目录下的Pd.xsd文件。从菜单栏选择Build | Symmetry | Conventional Cell。
从菜单栏选择File | Save Project,然后选择Window | Close All。保存是个好习惯,记不住的同学别担心,你会在某次宕机后记住的
打开位于Pd CASTEP GeomOpt目录下的Pd.xsd文件。
显示的是Pd的优化结构。
在3D视图中右击,选择Lattice Parameters。
a值大约是3.940 Å,相比较实验值是3.89 Å
然后关闭 Lattice Parameters对话框和Pd.xsd.
 

3. 构建并优化CO


CASTEP只对周期系统起作用,所以,为了优化CO分子的几何结构,必须把它放到晶格中。
在Project Explorer中,右击CO molecule目录,选择New | 3DAtomistic Document。右击 3DAtomistic.xsd,选择Rename,输入CO,按回车键。此时显示一个空白的3D视图。
从菜单栏选择Build | Crystals | Build Crystal。选择LatticeParameters 选项卡,把晶胞长度值a、b 和c都设为8.00,点击Build 按钮。在3D视图中显示一个空的晶胞。
从菜单栏选择Build | Add Atoms打开添加原子的对话框
CO分子中C-O键长通过实验测量为1.1283Å,如果我们通过使用笛卡尔坐标添加原子,可以很精确地按照这个键长值建立CO分子。
在Add Atoms对话框中,选择Options选项卡。确保Coordinate system被设为Cartesian。选择Atoms选项卡,按下Add 按钮。
一个碳原子被添加到晶胞的原点。
在Add Atoms对话框上,把Element改为O。保留x和y的值为0.000,把z 值改为1.1283。点击Add 按钮。然后关闭对话框。
现在已经准备好优化CO分子了。
从菜单栏选择Modules | CASTEP | Calculation
保持以前的计算设置不变,但这次不必优化晶胞。
在Setup选项卡上,点击More...按钮,取消选择Optimize Cell并关闭对话框。选择Electronic选项卡,把k-point设置由Medium改为Gamma。以后的教程会告诉大家k点是啥,以及这里为啥这么选取。现在就先照做完事了
选择Properties选项卡,选择Density of states。把k-point 设为Gamma,勾选上Calculate PDOS。按下Run 按钮。
这个算很快,先不着急分析数据,先整下一步。当然,保存操作还是要做的。

4. 构建Pd(110)表面


在本节中要使用前面优化的Pd结构。
在Pd bulk/Pd CASTEP GeomOpt目录中打开Pd.xsd文件。
创建一个表面需要两步。
第一步是劈开表面,第二步是创建一个包含表面的真空层。
从菜单栏选择Build | Surfaces | Cleave Surface。把Cleaveplane (h k l) 从-1 0 0 改为1 1 0,按TAB 键。增加Fractional Thickness值到1.5。点击Cleave按钮,关闭对话框。这步就是劈开表面
此时打开一个新的3D 模型文件,它包含一个2D周期性表面。可是CASTEP需要一个3D周期性系统作为输入,它可以使用Vacuum Slab工具获得。想一下,我们为什么要2D结构,又是为什么要把2D表面做成3D模型?这个问题有点无厘头,细细想想你会感谢我这个傻问题
从菜单栏选择Build | Crystals | Vacuum Slab。将Vacuumthickness值从10.00改为8.00,点击Build按钮。
结构由2D周期改变为3D周期,并且有一个真空被加到原子的上方。在做接下来的事情之前,必须重新定位晶格。
在3D视图中右击,从快捷菜单中选择Lattice Parameters,选择Advanced 选项卡,点击Re-orientto standard按钮,关闭对话框。
此时改变晶格显示方式并旋转结构,使Z轴垂直于屏幕。
在3D视图中右击,从快捷菜单中选择Display Style。选择Lattice选项卡。在Display style区域,将Style由Default改为Original。关闭对话框,按两次向上的方向键。
3D视图就如下图所示。


具有最大Z坐标的Pd 原子被称为“最高Pd层”(the uppermost Pd layer)。
在本教程的后面,需要知道Pd的层间距d0,可以使用原子坐标计算它。
从菜单栏选择View | Explorers | Properties Explorer。选择FractionalXYZ为x = 0.5和 y = 0.5的Pd原子。注意该原子的z值是指来自于XYZ属性的值。
Z值应该约为1.391 Å,这是层间距。这个z值是指XYZ(笛卡尔)属性的z坐标,而不是FractionalXYZ值。
大概就是下图那里(此图是未优化的Pd,所以数值和教程中不一样,我只是截个图)

注意:对fcc(110)系统,d0可以以下公式计算。

在弛豫表面之前,必须约束(constrain)Pd内部的原子,因为只需要弛豫表面。限制(restraint)、冻结(freeze)和约束的概念是不同的,请大家一定要注意
按住SHIFT键,选中除了最顶层Pd原子之外的所有Pd原子。从菜单栏选择Modify |Constraints。选中Fix fractional position,关闭对话框。
此时Pd内部的原子已经被束缚了,可以通过改变显示颜色查看被束缚的Pd原子。
在3D视图中点击,以取消选择原子。右击选择Display Style。在Atom 选项卡中将Color by选项改为Constraint。
此时3D视图如下图所示。

然后将Color by选项改回Element,关闭对话框。
这个结构是做Pd(110)表面弛豫所必须的,同时也是(1x1)CO在Pd(110)表面优化的初始模型。
从菜单栏选择File | Save As...,定位到Pd(110)目录,点击Save按钮。
按住ctrl键然后拖拽这个文档进入(1x1) CO on Pd(110)文件夹中,并且重命名该文档为(1x1) CO on Pd(110)。然后选择File | SaveProject,然后then Window | Close All。
 
未完待续……限于篇幅,教程(下)将在之后推送。



--END--


你 “在看” 我嘛  


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存